<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    // call()（了解即可）：使用 call 方法调用函数，同时指定被调用函数中 this 的值
    // 语法：fun.call(thisArg, arg1, arg2, ...)
    // thisArg:在 fun 函数运行时指定的 this 值
    // arg1，arg2：传递的其他参数
    // 返回值就是函数的返回值，因为它就是调用函数

    const obj = {
      uname: 'cxk'
    }
    function fn(x, y) {
      console.log(this)  // window
      console.log(x + y)  // 3
    }
    // 1.调用函数
    // 2.改变 this 指向
    fn.call(obj, 1, 2)  // 指向 obj   {uname: 'cxk'}
  </script>
</body>

</html>